﻿Imports System
Imports System.Collections.Generic
Imports System.Reflection
Imports System.Runtime.CompilerServices

Namespace System.Workflow.ComponentModel.Compiler
    Public Interface ITypeProvider
        ' Events
        Custom Event TypeLoadErrorsChanged As EventHandler
        Custom Event TypesChanged As EventHandler

        ' Methods
        Function [GetType](ByVal name As String) As Type
        Function [GetType](ByVal name As String, ByVal throwOnError As Boolean) As Type
        Function GetTypes() As Type()

        ' Properties
        ReadOnly Property LocalAssembly As Assembly
            Get
        End Property
        ReadOnly Property ReferencedAssemblies As ICollection([Of] Assembly)
            Get
        End Property
        ReadOnly Property TypeLoadErrors As IDictionary([Of] Object, Exception)
            Get
        End Property
    End Interface
End Namespace

